package escenario;

import comunicacion.Comunicacion;

public class AtributoEscenario implements Runnable{  
	private Posicion posicion;
    private Escenario escenario;
    private Comunicacion comunicacion;
	private double dX, dY;
	private double xAbs, yAbs;
	private String posAbs;

	public Posicion getPosicion() {
		return posicion;
	}

	public void setPosicion(Posicion posicion) {
		this.posicion = posicion;
	}

	public Escenario getEscenario() {
		return escenario;
	}

	public void setEscenario(Escenario escenario) {
		this.escenario = escenario;
	}
	
	public double getDx() {
		return dX;
	}

	public void setDx(double dX) {
		this.dX = dX;
	}

	public double getDy() {
		return dY;
	}

	public void setDy(double dY) {
		this.dY = dY;
	}	
	
	public double getXAbs() {
		calcXAbs();
		return xAbs;
	}

	public void setXAbs(double xAbs) {
		this.xAbs = xAbs;
	}

	public double getYAbs() {
		calcYAbs();
		return yAbs;
	}

	public void setYAbs(double yAbs) {
		this.yAbs = yAbs;
	}

	public Comunicacion getComunicacion() {
		return comunicacion;
	}

	public void setComunicacion(Comunicacion comunicacion) {
		this.comunicacion = comunicacion;
	}
	
	private void calcXAbs(){
		setXAbs(this.getPosicion().getX() + this.getDx());
	}
	
	private void calcYAbs(){
		setYAbs(this.getPosicion().getY() + this.getDy());
	}
	
	public String printPosRel(){
		return ((int) this.getPosicion().getX() + 
				" " + (int) this.getPosicion().getY() + " "  + (int) this.getPosicion().getZ() );
	}
	
	public String printPosAbs(){
		return ((int) getXAbs() + " " + (int) getYAbs() + " "  + (int) this.getPosicion().getZ());
	}
	
	@Override
	public void run() {
		// TODO Auto-generated method stub
		
	}  
    
}  
